package com.quan.hr.service;

import com.quan.hr.commons.export.HrPostImportVo;
import com.quan.hr.commons.vo.HrPostVo;
import com.quan.hr.entity.HrPost;
import com.quan.commons.utils.PageUtils;
import com.quan.commons.core.MyBaseService;

import java.util.List;

/**
 * 人事管理-岗位信息
 *
 * @author yhaoquan
 * @email yhaoquan@163.com
 * @date 2023-02-21 16:41:34
 */
public interface HrPostService extends MyBaseService<HrPost> {

    /**
     * 修改员工信息
     * @param vo
     * @return
     */
    public boolean updateById(HrPostVo vo);

    /**
     * 加载员工信息
     * @param id
     * @return
     */
    public HrPostVo getInfo(Long id);

    /**
     * 列表查询
     * @param vo
     * @return
     */
    public List<HrPostVo> queryList(PageUtils pageUtils, HrPostVo vo);

    /**
     * 分页查询
     * @param pageUtils
     * @param vo
     * @return
     */
    public PageUtils queryPage(PageUtils pageUtils, HrPostVo vo);

    /**
     * 树形结构查询
     * @return
     */
    public List<HrPostVo> listWithTree();


    /**
     * 根据子节点找到完整的父节点路径
     * @param id
     * @return
     */
    public Long[] findPath(Long id);

    /**
     * 导入岗位Excel数据
     * @param list
     */
    public boolean saveImportData(List<HrPostImportVo> list);
}

